home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / edit / tde40.zip / criterr.h < prev    next >
C/C++ Source or Header  |  1994-06-05  |  12KB  |  401 lines

  1. /*
  2.  * Most of this info is regurgitated stuff from IBM and Microsoft Technical
  3.  * Reference manuals and the Microsoft Knowledge Base.  The error messages
  4.  * are copyright by either Microsoft or IBM.
  5.  *
  6.  * See:
  7.  *
  8.  *   Microsoft Corporation, _Programmer's Reference Manual_, 1986,
  9.  *    Redmond, Washingtion, Document No. 410630014-320-003-1285,
  10.  *    pp. 1-20 thru 1-21, 1-37 thru 1-38, 1-216 thru 1-218.
  11.  *
  12.  *   IBM Corporation, _Disk Operating System: Technical Reference_, 1985,
  13.  *    Boca Raton, Florida, pp. 6-14 thru 6-21, 6-38 thru 6-44.
  14.  *
  15.  *   Microsoft Knowledge Base, "Extended Error Code Information",
  16.  *    Microsoft Corporation, Redmond, Wash., 1992, Document Number: Q74463,
  17.  *    Publication Date:  March 24, 1993.
  18.  *
  19.  *
  20.  * New editor name:  TDE, the Thomson-Davis Editor.
  21.  * Author:           Frank Davis
  22.  * Date:             April 1, 1992
  23.  *
  24.  * This program is released into the public domain, Frank Davis.
  25.  *   You may distribute it freely.
  26.  */
  27.  
  28.  
  29. #if defined( __UNIX__ )
  30.  
  31. /*
  32.  **********************************************************************
  33.  ******************************  PART 1  ******************************
  34.  **********************************************************************
  35.  *
  36.  * Let's try to make unix have the look and feel of a PC.
  37.  */
  38.  
  39. char *criterr_screen[] = {
  40. "┌───────────────────────────────────────────────────────────────────┐",
  41. "│                          TDE signal handler                       │",
  42. "│                                                                   │",
  43. "│        Signal:                                                    │",
  44. "│         info1:                                                    │",
  45. "│         info2:                                                    │",
  46. "│         info3:                                                    │",
  47. "│   Error Class:                                                    │",
  48. "│         Locus:                                                    │",
  49. "│   Device Type:                                                    │",
  50. "│   Device Name:                                                    │",
  51. "│                                                                   │",
  52. "│            Please enter action:  (Q)uit or (R)etry?               │",
  53. "│               (ONLY AS A LAST RESORT -- (A)bort)                  │",
  54. "└───────────────────────────────────────────────────────────────────┘",
  55. NULL
  56. };
  57.  
  58. char *sigabrt_1  = "SIGABRT";
  59. char *sigabrt_2  = "abort( ) generates this signal";
  60. char *sigabrt_3  = "possible error in TDE";
  61.  
  62.  
  63. char *sigalrm_1  = "SIGALRM";
  64. char *sigalrm_2  = "this signal is generated by a timer";
  65.  
  66.  
  67. char *sigchld_1  = "SIGCHLD";
  68. char *sigchld_2  = "child process died";
  69. char *sigchld_3  = "continue with editor";
  70. char *sigchld_4  = "job control signal";
  71.  
  72.  
  73. char *sigcont_1  = "SIGCONT";
  74. char *sigcont_2  = "continue a stopped process";
  75. char *sigcont_3  = "redraw the screen and continue";
  76. char *sigcont_4  = "job control signal";
  77.  
  78.  
  79. char *sigfpe_1   = "SIGFPE";
  80. char *sigfpe_2   = "arithmetic exception, divide by 0, domain error...";
  81. char *sigfpe_3   = "No floats are used in TDE.  Error in Unix??";
  82.  
  83.  
  84. char *sighup_1   = "SIGHUP";
  85. char *sighup_2   = "controlling terminal was disconnected";
  86. char *sighup_3   = "terminate TDE";
  87.  
  88.  
  89. char *sigill_1   = "SIGILL";
  90. char *sigill_2   = "illegal hardware instruction";
  91. char *sigill_3   = "possible error in TDE";
  92.  
  93.  
  94. char *sigint_1   = "SIGINT";
  95. char *sigint_2   = "interrupt character";
  96. char *sigint_3   = "halting editor functions in progress";
  97.  
  98.  
  99. char *sigio_1    = "SIGIO";
  100. char *sigio_2    = "terminal or network event";
  101. char *sigio_3    = "TDE is not sure how to handle this signal";
  102.  
  103.  
  104. char *sigiot_1   = "SIGIOT";
  105. char *sigiot_2   = "input/output Trap";
  106. char *sigiot_3   = "hardware error not the fault of TDE";
  107.  
  108.  
  109. char *sigkill_1  = "SIGKILL";
  110. char *sigkill_2  = "unknown process sent a kill signal to TDE";
  111. char *sigkill_3  = "response is unknown ";
  112.  
  113.  
  114. char *sigpipe_1  = "SIGPIPE";
  115. char *sigpipe_2  = "Write to a pipe with no reader";
  116. char *sigpipe_3  = "need to stop the write";
  117.  
  118.  
  119. char *sigpoll_1  = "SIGPOLL";
  120. char *sigpoll_2  = "poll event caught";
  121.  
  122.  
  123. char *sigpwr_1   = "SIGPWR";
  124. char *sigpwr_2   = "power failure, save work before battery runs down";
  125. char *sigpwr_3   = "F2 saves, F3 Quits, and F4 saves and quits";
  126.  
  127.  
  128. char *sigquit_1  = "SIGQUIT";
  129. char *sigquit_2  = "terminal quit key pressed";
  130. char *sigquit_3  = "F3 is the TDE quit key";
  131.  
  132.  
  133. char *sigsegv_1  = "SIGSEGV";
  134. char *sigsegv_2  = "segment violation:  invalid memory reference";
  135. char *sigsegv_3  = "possible error in TDE - call Frank Davis";
  136.  
  137.  
  138. char *sigstop_1  = "SIGSTOP";
  139. char *sigstop_2  = "job control signal:  cannot be caught.";
  140. char *sigstop_3  = "possible error in Unix if TDE caught this.";
  141.  
  142.  
  143. char *sigterm_1  = "SIGTERM";
  144. char *sigterm_2  = "some process wants to terminate TDE";
  145. char *sigterm_3  = "F2 saves, F3 quits, and F4 quits and saves";
  146.  
  147.  
  148. char *sigtrap_1  = "SIGTRAP";
  149. char *sigtrap_2  = "hardware fault:  not fault of TDE";
  150. char *sigtrap_3  = "TDE aborting";
  151.  
  152.  
  153. char *sigtstp_1  = "SIGTSTP";
  154. char *sigtstp_2  = "terminal stop character, job control signal";
  155. char *sigtstp_3  = "F3 quits TDE";
  156.  
  157.  
  158. char *sigttin_1  = "SIGTTIN";
  159. char *sigttin_2  = "a background process is trying to read";
  160. char *sigttin_3  = "F3 quits TDE";
  161.  
  162.  
  163. char *sigttou_1  = "SIGTTOU";
  164. char *sigttou_2  = "a background process is trying to write";
  165. char *sigttou_3  = "F3 quits TDE";
  166.  
  167.  
  168. char *sigurg_1   = "SIGURG";
  169. char *sigurg_2   = "urgent condition";
  170. char *sigurg_3   = "network error";
  171.  
  172.  
  173. char *sigusr1_1  = "SIGUSR1";
  174. char *sigusr1_2  = "user signal 1 received";
  175. char *sigusr1_3  = "unknown origin or action";
  176.  
  177.  
  178. char *sigusr2_1  = "SIGUSR2";
  179. char *sigusr2_2  = "user signal 2 received";
  180. char *sigusr2_3  = "unknown origin or action";
  181.  
  182.  
  183. char *sigvtalrm_1 = "SIGVTALRM";
  184. char *sigvtalrm_2 = "virtual timer alarm";
  185.  
  186.  
  187. char *sigwinch_1 = "SIGWINCH";
  188. char *sigwinch_2 = "window size change detected";
  189. char *sigwinch_3 = "F3 quits TDE";
  190.  
  191.  
  192. char *sigxcpu_1  = "SIGXCPU";
  193. char *sigxcpu_2  = "process exceeded CPU time limit";
  194. char *sigxcpu_3  = "F3 quits TDE, F4 saves work";
  195.  
  196.  
  197. char *sigxfsz_1  = "SIGXFSZ";
  198. char *sigxfsz_2  = "process exceeded file size limit";
  199. char *sigxfsz_3  = "F3 quits TDE, F4 saves work";
  200.  
  201.  
  202.  
  203. #else
  204.  
  205. /*
  206.  **********************************************************************
  207.  ******************************  PART 2  ******************************
  208.  **********************************************************************
  209.  *
  210.  * DOS critical error handler.
  211.  */
  212.  
  213.  
  214. char *criterr_screen[] = {
  215. "┌───────────────────────────────────────────────────────────────────┐",
  216. "│                  tde critical error handler                       │",
  217. "│                                                                   │",
  218. "│    Error code:                                                    │",
  219. "│     Operation:                                                    │",
  220. "│         Drive:                                                    │",
  221. "│ Extended Code:                                                    │",
  222. "│   Error Class:                                                    │",
  223. "│         Locus:                                                    │",
  224. "│   Device Type:                                                    │",
  225. "│   Device Name:                                                    │",
  226. "│                                                                   │",
  227. "│            Please enter action:  (Q)uit or (R)etry?               │",
  228. "│               (ONLY AS A LAST RESORT -- (A)bort)                  │",
  229. "└───────────────────────────────────────────────────────────────────┘",
  230. NULL
  231. };
  232.  
  233. /*
  234.  * codes from register di
  235.  */
  236. char *error_code[] = {
  237.    "Attempt to write on write-protected disk",    /* 0 */
  238.    "Unknown unit",
  239.    "Drive not ready",
  240.    "Unknown command",
  241.    "Data error (CRC)",
  242.    "Bad drive request structure length",          /* 5 */
  243.    "Seek error",
  244.    "Unknown media type",
  245.    "Sector not found"